package com.zsrt.examination.client;

import java.util.List;
import java.util.Scanner;

import com.zsrt.examination.entity.StudentEntity;
import com.zsrt.examination.impl.FunctionDaoImpl;

/**
*@author jzh
*@创建时间 2017年4月20日下午6:20:21
*类说明：
*/
public class Login {
	
	public static void main(String[] args) {
		
		FunctionDaoImpl dao=new FunctionDaoImpl();
		Scanner in=new Scanner(System.in);
		List<StudentEntity> studentLists = dao.init();
		
		//使用while(true)死循环，保证不会执行一次后停止
		while(true){
			//登录主界面
			dao.printLoginMenu();
			int number1 = in.nextInt();
			if(number1==1){
				//while(true){
					//判断帐号密码是否正确
					boolean importIdAndPw = dao.importAdminIdAndPw(in);
					//如果正确，登录管理员主界面
					if(importIdAndPw){
						while(true){
							//显示管理员界面
							dao.printAdminFirstMenu();
							//根据提示输入1~5
							int number11 = in.nextInt();
							//如果输入2，可以修改考生的成绩
							if(number11==2){
								//得到存储学生对象的list
								//List<StudentEntity> initList = dao.init();
								//如果输入id正确，可以输入1~3修改学生的语文，数学，英语成绩，并打印该学生修改后的成绩
							    dao.updateScore(studentLists, in);
							    /*dao.printAdminFirstMenu();
							    int number12 = in.nextInt();*/
							}else if(number11==3){
								System.err.println("输入要删除的考生id");
								String id = in.next();
								boolean flag=dao.deleteStudentsById(studentLists, id);
								if(flag){
									System.err.println("删除成功");
								}else{
									System.err.println("删除失败");
								}
							}else if(number11==4){
								dao.findAllStudents(studentLists);
							}
							else{
								break;
							}
						}
					}else{
						System.err.println("输入错误，请重新选择");
					}
				//}	
			}else if(number1==2){
					//从数据库中查找，如果帐号和密码匹配，则可以登录，不匹配，重新输入
					System.err.println("请输入手机号码");
					String id = in.next();
					System.err.println("请输入密码");
					String pw = in.next();
					boolean importUserIdAndPw = dao.importUserIdAndPw(studentLists,id,pw);
					//个人主界面
					if(importUserIdAndPw){
						while(true){
							dao.printUserFirstMenu();
							int number23 = in.nextInt();
							
							if(number23==1){
								dao.findMyDate(studentLists, id);
							}else if(number23==2){
								String city=null;
								//遍历列表，拿到id对应的city
								for(StudentEntity student:studentLists){
									String id1=student.getId();
									if(id.equals(id1)){
										city=student.getCity();
									}
								}
								dao.findHighestScoreInCity(studentLists, city);
							}else if(number23==3){
								System.err.println("全国各个省份的状元如下");
								dao.findHighestScoreInProvinces(studentLists);
							}else if(number23==4){
								System.err.println("输入要查询的城市");
								String city = in.next();
								dao.findHighestScoreInCity(studentLists, city);
							}else if(number23==5){
								dao.descScore(studentLists);
							}else{
								break;
							}
						}
						
					}else{
						System.err.println("输入错误，请重新选择");
					}
			}else{
				System.out.println("已成功退出系统");
				break;
			}
			
		}
	}

}
